home *** CD-ROM | disk | FTP | other *** search
/ Complete Linux / Complete Linux.iso / docs / devel / eiffel / eiffel_p.z / eiffel_p / ep / EiffelScanSource.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-12-09  |  1.2 KB  |  38 lines

  1. # ifndef xyEiffelScanSource
  2. # define xyEiffelScanSource
  3.  
  4. /* $Id: Source.h,v 1.7 1992/08/07 15:29:41 grosch rel $ */
  5.  
  6. # if defined __STDC__ | defined __cplusplus
  7. # define ARGS(parameters)    parameters
  8. # else
  9. # define ARGS(parameters)    ()
  10. # endif
  11.  
  12. extern int  EiffelScan_BeginSource  ARGS((char * FileName));
  13.  
  14.    /*
  15.       EiffelScan_BeginSource is called from the scanner to open files.
  16.       If not called input is read form standard input.
  17.    */
  18.  
  19. extern int  EiffelScan_GetLine      ARGS((int File, char * Buffer, int Size));
  20.  
  21.    /*
  22.       EiffelScan_GetLine is called to fill a buffer starting at address 'Buffer'
  23.       with a block of maximal 'Size' characters. Lines are terminated
  24.       by newline characters (ASCII = 0xa). EiffelScan_GetLine returns the number
  25.       of characters transferred. Reasonable block sizes are between 128
  26.       and 2048 or the length of a line. Smaller block sizes -
  27.       especially block size 1 - will drastically slow down the scanner.
  28.    */
  29.  
  30. extern void EiffelScan_CloseSource  ARGS((int File));
  31.  
  32.    /*
  33.       EiffelScan_CloseSource is called from the scanner at end of file respectively
  34.       at end of input. It can be used to close files.
  35.    */
  36.  
  37. # endif
  38.